
def test_fun(val):
    """
    放在里面，方法调用的时候能看到写的这些方法文档
    :param val : 参数1
    :return : 返回值说明
    if  中都是 False
    - val 为 None
    - val 为 False
    - val 为 0
    - val 为空字符串 ''
    - val 为空列表 []
    - val 为空字典 {}
    - val 为空元组 ()
    """
    # python 中的 not 和 TypeScript/JavaScript 中的 ! 运算符都是逻辑非运算符，作用类似
    if not val: # 判断val 是否是 False  0 空
        return 2
    if val is not None:   # 专门判断值是否为 None（空值）
        return "不是None"
    print(val)
    return val

val_fn = test_fun("3")
print(val_fn)
val_fn2 = test_fun(None)
print(val_fn2)



# a = None; # 类似ts中的null
# print(a)
# print(type(a)) # <class 'NoneType'>
ddd = 200 # 全局变量 函数体内部能访问
def tesA() :
    global abcd
    abcd = 100  #global 关键字只用来声明变量，不能在声明的同时赋值。
    print(ddd)
# print(abc)  函数作用域外面不能访问
tesA()
print('global 变量', abcd)  # global 声明函数内部变量为全局变量
i = 0
while i<4:
    print(i)
    if i % 2:
        i += 1
        continue

    elif i == 6:
        break

    i += 1;


# while True: 常用于 等待输入的情况
# 多返回值
def test_return():
    return 1, 'a', [1,23]

a,b,c = test_return()
print(a,b,c)